package main

import (
	"fmt"
	"math/rand"
	"strconv"
	"strings"
)

/*
	1.创建一个初始长度为0，容量为10的int型切片，调用rand,intn(128)100次，往切片里面添加100个元素，利用map统计该切片中有多少个互不相同的元素
	2.实现一个函数func arr2string(arr []int)string，比如输入[]int{2,4,6}，返回“2，4，6”。输入的切片可能很短，也可能很长
*/
func count() {
	arr1 := make([]int, 0, 10)
	map1 := make(map[int]int)
	for i := 0; i < 100; i++ {
		arr1 = append(arr1, rand.Intn(128))
	}
	for _, v := range arr1 {
		map1[v]++
	}
	for k, v := range map1 {
		fmt.Println(k, v)
	}
}

func arr2string(arr []int) string {
	sb := strings.Builder{}
	for _, v := range arr {
		sb.WriteString(strconv.Itoa(v))
	}
	return sb.String()
}

func main() {
	count()
	fmt.Println("---------------------")
	fmt.Println(arr2string([]int{2, 4, 6}))
	fmt.Println(arr2string([]int{1, 3}))
	fmt.Println(arr2string([]int{1, 4, 5, 6, 7, 9, 3, 8, 0}))
}
